#pragma once

#include <string>

#include "../core.h"
#include "../thirdparty/json/json.h"

struct S_CORE_EXPORT Serialize {
  virtual Json::Value Wrapper() const;
  virtual void Parser(Json::Value& input);
};

struct S_CORE_EXPORT SerializeUpper : Serialize {
  std::string Serialize() const;
  void UnSerialize(const std::string& input);
};
